iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 1
0

資訊安全已發展為擅長於授權和管理人們對機密資訊的訪問權限。
但是自動化正在擴大接管如應用程式、伺服器甚至網路,漸漸都不再需要手動配置和部署。
我們的系統和交付管道變得越來越快,越來越強大。
但是,自動化要求我們改變對保護基礎架構和在其上運行的應用程式的保護方式。

當將權力下放給非人類行為者時,我們要確保他們只能按照我們的要求去做。
現代分散式系統的規模使得保護單一元件的步驟變得繁瑣。
人為監控虛擬機器或容器的運行時間,與虛擬機器或容器的運行時間相比,比率可能更少。

於是我們需要來談談安全開發生命週期中的一些常見步驟,並分享保護它們的最佳實踐。

Microsoft 開發的安全開發生命週期(SDL)

是一個安全保證過程,其重點是軟體開發。它在軟體開發過程的所有階段都考慮到了安全性和隱私層面,目的是保護最終使用者。這個框架還包括一組強制性的安全活動,這些活動按照了傳統軟體開發生命週期的各個階段進行分組。

SDL流程的 7 個階段:
  • 培訓:
    這是SDL之前要求的一部分,其中經過深思熟慮的安全培訓計劃使軟體開發團隊可以了解安全和隱私基礎知識,特定的技術問題,並隨時了解安全和隱私的最新趨勢。

  • 需求:
    需求階段是開發團隊考慮如何將安全性和隱私性最好地集成到開發過程中,確定關鍵的安全目標,同時最大程度地減少對應用程序可用性,項目計劃和進度的破壞。

  • 設計:
    設計階段確定軟體產品的總體要求和結構,並建立設計最佳實踐。SDL設計階段的核心元素是威脅建模,可以使用SDL 威脅建模工具執行威脅建模。安全和非安全主題專家都可以使用威脅建模工具,以通過創建和分析威脅模型:
    交流有關其系統的安全設計,分析這些設計是否存在潛在的安全問題,以及建議和管理針對安全問題的緩解措施。

  • 實施:
    在實施階段,開發團隊要求並強制執行在項目期間要遵循的最佳實踐。

  • 驗證:
    驗證階段是指軟體功能完整且已根據要求和設計階段中概述的安全性和隱私目標進行測試的點。

  • 發布:
    發布階段是項目團隊創建事件響應計劃,執行最終安全審查並存檔所有相關數據以供軟體進行發布後服務的階段。

  • 回應:
    這是SDL後的要求,在該要求下,發佈軟體程序後,產品開發團隊必須能夠使用發布階段輸出的計劃和資源來解決所有可能的安全漏洞或隱私問題,這些問題都需要做出回應。Microsoft安全響應中心(MSRC)提供了有關如何管理安全響應的指南。

SDL提供的安全性分析、開發和測試工具

可在開發過程的各個階段幫助開發人員:

  • SDL Process Template for Visual Studio Team System
  • MSF-Agile+SDL Process Template
  • SiteLock ATL Template
  • FxCop
  • Anti-XSS Library
  • CAT.NET
  • BinScope
  • MiniFuzz
  • SDL Regex Fuzzer

下一篇
一般安全概念
系列文
安全軟體開發生命週期(SSDLC)學習筆記36
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言